/**
 * Esta clase contiene funciones que
 * facilitan el procesamiento de los
 * comandos cat y ldir del programa dcli. 
 *
 * @author Colmenares Carlos (06-39380)
 * @author Tough Alex (07-41604)
 */
import java.io.*;

class Utilities{
   
    /**
     * Determina si un archivo pertenece a un directorio.
     *
     * @param archivo Nombre del archivo
     *
     * @param ldirectorio Nombre del directorio
     *
     * @return true si el archivo pertenece al directorio
     *         false en caso contrario.
     *
    */ 
    public static boolean perteneceDirectorio(String archivo,
			String ldirectorio)
    {	File dir = new File(ldirectorio);
	String[] contenido = dir.list();
	for(int i = 0;i < contenido.length;i++){
	    if(contenido[i].equals(archivo))
		return true;
	}
	return false;
    }

    /**
     * Lista por pantalla el contenido de un archivo dado.
     * 
     * @param archivo_path El archivo
     *
    */
    public static void cat(String archivo_path){
	try{
	    BufferedReader br = new BufferedReader(new FileReader(archivo_path));
	    String line = "";
	    while((line = br.readLine()) != null){
		System.out.println(line);
	    }
	    br.close();
	}
	catch(IOException ioe){
	    System.out.println("Error de E/S.");
	}
    }

    /**
     * Lista por pantalla el contenido de un directorio dado.
     * 
     * @param ldirectorio El directorio
     *
    */
    public static void ldir(String ldirectorio){
	File file = new File(ldirectorio);
	File[] contenido = file.listFiles();
	for(int i=0;i<contenido.length;i++){
	    System.out.println(contenido[i].getName() + " " + 
				contenido[i].length() + "B");
	}
    }
    
}
